<?php
//by ralvear 20130811
class usuarioModelo extends Modelo
{

	public function __construc(){
		parent::__construc();
	}

	public function escaneo(){

		$lstUsuarios = array();
		$sql = "SELECT * FROM usuario ORDER BY usuari_id";
		$bd_rcUsuario = $this->ejecutar( $sql );
		$no_rcUsuario = $this->contar( $bd_rcUsuario );

		for( $i = 0; $i < $no_rcUsuario; $i++){
			$rg_rcUsuario = $this->buscaruno( $bd_rcUsuario, $i );

			if( $rg_rcUsuario > 0 && is_array( $rg_rcUsuario ) ){
				$vo_usuario = $this->cargarVo( "usuario" );
				$vo_usuario->asignarId( $rg_rcUsuario['usuari_id'] );
				$vo_usuario->asignarNombre( $rg_rcUsuario["usuari_nombre"] );
				$vo_usuario->asignarContra( $rg_rcUsuario["usuari_contra"] );
				$vo_usuario->asignarAvatar( $rg_rcUsuario["usuari_avatar"] );
				$lstUsuarios[] = $vo_usuario;

			}	
			
		}
		return $lstUsuarios;
	}


	public function cargarxId( $valor ){

		$vo_usuario = $this->cargarVo( "usuario" );

		if( is_int( $valor ) ){

			$bd_rcUsuario = $this->ejecutar( "SELECT * FROM usuario WHERE usuari_id = {$valor} " );
			$rg_rcUsuario = $this->buscaruno( $bd_rcUsuario );

			if( $rg_rcUsuario > 0 && is_array($rg_rcUsuario) ){
				
				$vo_usuario->asignarId( $rg_rcUsuario['usuari_id'] );
				$vo_usuario->asignarNombre( $rg_rcUsuario["usuari_nombre"] );
				$vo_usuario->asignarContra( $rg_rcUsuario["usuari_contra"] );
				$vo_usuario->asignarAvatar( $rg_rcUsuario["usuari_avatar"] );
			}	

		}

		return $vo_usuario;
	}
	
	public function almacenar( $vo_usuario )
	{

		$sql = 
			"INSERT INTO usuario (";
				($vo_usuario->obtenerId())? $sql .= "usuari_id" : '' ;
				($vo_usuario->obtenerNombre())? $sql .= ",usuari_nombre" : '' ;
				($vo_usuario->obtenerContra())? $sql .= ",usuari_contra" : '';
				($vo_usuario->obtenerAvatar())? $sql .= ",usuari_avatar" : '' ;
		$sql .=
			 ")VALUES('";
				($vo_usuario->obtenerId())? $sql .= $vo_usuario->obtenerId()."','" : '' ;
				($vo_usuario->obtenerNombre())? $sql .= $vo_usuario->obtenerNombre()."','" : '' ;
				($vo_usuario->obtenerContra())? $sql .= $vo_usuario->obtenerContra()."','" : '' ;
				($vo_usuario->obtenerAvatar())? $sql .= $vo_usuario->obtenerAvatar() ."')" : '' ;
	
		$bd_rcUsuario = $this->ejecutar( $sql );
		
		return $bd_rcUsuario;
    }

    public function actualizar( $vo_usuario, $usuari_id )
    {

    	$sql = 
    		"UPDATE usuario SET ";
    		( $vo_usuario->obtenerId() )? $sql .= " usuari_id = '".$vo_usuario->obtenerId()."', " : "" ;
    		( $vo_usuario->obtenerNombre() )? $sql .= " usuari_nombre = '".$vo_usuario->obtenerNombre()."', " : "" ;
    		( $vo_usuario->obtenerContra() )? $sql .= " usuari_contra = '".$vo_usuario->obtenerContra()."', " : "" ;
    		( $vo_usuario->obtenerAvatar() )? $sql .= " usuari_avatar = '".$vo_usuario->obtenerAvatar()."' " : "" ;

    	$sql .= 
    		"WHERE usuari_id = '".$usuari_id."' ";

    	$bd_rcUsuario = $this->ejecutar( $sql );

    	return $bd_rcUsuario;

    }

    public function eliminar( $id ){

    	$sql = 
    		"DELETE FROM usuario WHERE usuari_id = ".$id;

    	$bd_rcUsuario = $this->ejecutar( $sql );

    	return $bd_rcUsuario;

    }

}

?>